Multipldpass Pipelining: Enhancing In-order Microarchitectures to Out-of-order Performance
نویسندگان
چکیده
Out-of-program-order execution has become almost a ubiquitous characteristic of modern processors because of its ability to tolerate variable memory-instruction latency. As designs are becoming increasingly power-conscious, the cost and complexity of the components of out-of-order execution are becoming problematic. Compilers have generally proven adept at planning useful static instruction-level parallelism, but relying solely on the compiler's instruction arrangement has been shown to perform poorly when cache misses occur. This work proposes two multiple-pass pipelining "flea-flicker" microarchitectural techniques , two-pass pipelining and mukipass pipelining, both of which exploit a static compiler's meticulous scheduling as well as advance execution beyond otherwise stalled instructions without the complexity of true out-of-order execution. With twopass pipelining, programs execute on two in-order back-end pipelines coupled by a queue. The "advance" pipeline often defers instructions dispatching with unready operands rather than stalling. The "backup" pipeline allows concurrent resolution of instructions deferred by the first pipeline allowing overlapping of useful "adva,nced" execution with miss resolution. Multipass pipelining is based upon a similar
منابع مشابه
The Limits of Semiconductor Technology and Oncoming Challenges in Computer Microarchitectures and Architectures
In the last three decades the world of computers and especially that of microprocessors has been advanced at exponential rates in both productivity and performance. The integrated circuit industry has followed a steady path of constantly shrinking devices geometries and increased functionality that larger chips provide. The technology that enabled this exponential growth is a combination of adv...
متن کاملMicroarchitectural Innovations: Boosting Microprocessor Performance Beyond Semiconductor Technology Scaling
Semiconductor technology scaling provides faster and more plentiful transistors to build microprocessors, and applications continue to drive the demand for more powerful microprocessors. Weaving the “raw” semiconductor material into a microprocessor that offers the performance needed by modern and future applications is the role of computer architecture. This paper overviews some of the microar...
متن کاملCharacterization of Web Server Workloads for Three Generations of IBM PowerPC Microarchitectures
Web server workloads have been characterized as having a treelike execution path and thus a higher branch misprediction ratio than other types of workloads such as are represented by SPECfp and SPECint, which typically contain more loops1. Thus, it would stand to reason that speculative and out of order execution would be less effective for web server workloads than for other workloads that exh...
متن کاملBanked microarchitectures for complexity-effective superscalar microprocessors
High performance superscalar microarchitectures exploit instruction-level parallelism (ILP) to improve processor performance by executing instructions out of program order and by speculating on branch instructions. Monolithic centralized structures with global communications, including issue windows and register files, are used to buffer in-flight instructions and to maintain machine state. The...
متن کاملFixed-point FPGA Implementation of a Kalman Filter for Range and Velocity Estimation of Moving Targets
Tracking filters are extensively used within object tracking systems in order to provide consecutive smooth estimations of position and velocity of the object with minimum error. Namely, Kalman filter and its numerous variants are widely known as simple yet effective linear tracking filters in many diverse applications. In this paper, an effective method is proposed for designing and implementa...
متن کامل